function install(Vue) {
  components.map((component) => {
    Vue.component(component.name, component)
  })
}

export default {
  install,
}

export function use(Vue, componentList) {
  componentList.map((c) => {
    Vue.component(c.name, c)
  })
}

// app
import DropDownList from "./app/DropDownList.vue"
import Loading from "./app/Loading.vue"
import PageHeader from "./app/PageHeader.vue"
import ScanSearch from "./app/ScanSearch.vue"
import StatTable from "./app/StatTable.vue"
import AddTable from "./app/AddTable.vue"
import Pager from "./app/Pager.vue"
import Scan from "./app/Scan.vue"
import KvPair from "./app/KvPair.vue"
import KSlotPair from "./app/KSlotPair.vue"
import ListFilter from "./app/ListFilter.vue"
import FixedScroll from "./app/FixedScroll.vue"
import BottomSheet from "./app/BottomSheet.vue"
import Button from "./app/Button.vue"
import CascadeFilter from "./app/CascadeFilter.vue"
import Cascade from "./app/Cascade.vue"
import ColoredTable from "./app/ColoredTable.vue"
import InputTable from "./app/InputTable.vue"
import BarcodeInfo from "./app/BarcodeInfo.vue"
import BetterStatTable from "./app/BetterStatTable.vue"
import FixedTwoTable from "./app/FixedTwoTable.vue"

// icon
import IconBase from "./icon/aa-icon-base.vue"
import IconAngleBracket from "./icon/angle-bracket.vue"
import IconBack from "./icon/back.vue"
import IconForward from "./icon/forward.vue"
import IconCheck from "./icon/check.vue"
import IconCross from "./icon/cross.vue"
import IconTriangle from "./icon/triangle.vue"
import IconSearch from "./icon/search.vue"
import IconMessage from "./icon/message.vue"
import IconTreeOpen from "./icon/tree-open.vue"
import IconTreeClosed from "./icon/tree-closed.vue"
import IconLoading from "./icon/loading.vue"

// app icon
import IconCompany from "./icon/app/company.vue"
import IconFinance from "./icon/app/finance.vue"
import IconHome from "./icon/app/home.vue"
import IconMy from "./icon/app/my.vue"

// basic
import V from "./basic/v.vue"
import H from "./basic/h.vue"
import { PageCache } from "./basic/page-cache.js"

// data

// form

// navigation

// notice

// other

export {

  DropDownList,
  Loading,
  PageHeader,
  ScanSearch,
  StatTable,
  AddTable,
  Pager,
  Scan,
  KvPair,
  KSlotPair,
  ListFilter,
  FixedScroll,
  BottomSheet,
  Button,
  CascadeFilter,
  Cascade,
  ColoredTable,
  InputTable,
  BarcodeInfo,
  BetterStatTable,
  FixedTwoTable,

  IconBase,
  IconAngleBracket,
  IconBack,
  IconForward,
  IconCheck,
  IconCross,
  IconTriangle,
  IconSearch,
  IconMessage,
  IconTreeOpen,
  IconTreeClosed,
  IconLoading,

  IconCompany,
  IconFinance,
  IconHome,
  IconMy,

  V,
  H,
  PageCache,

}

const components = [

  DropDownList,
  Loading,
  PageHeader,
  ScanSearch,
  StatTable,
  AddTable,
  Pager,
  Scan,
  KvPair,
  KSlotPair,
  ListFilter,
  FixedScroll,
  BottomSheet,
  Button,
  CascadeFilter,
  Cascade,
  ColoredTable,
  InputTable,
  BarcodeInfo,
  BetterStatTable,
  FixedTwoTable,

  IconBase,
  IconAngleBracket,
  IconBack,
  IconForward,
  IconCheck,
  IconCross,
  IconTriangle,
  IconSearch,
  IconMessage,
  IconTreeOpen,
  IconTreeClosed,
  IconLoading,

  IconCompany,
  IconFinance,
  IconHome,
  IconMy,

  V,
  H,
  PageCache,

]
